// Macrobar.h provides the attributes of the Macrobar class
//-----------------

#if !defined( MacrobarH)
#define MacrobarH

//-----------------
// Includes various libraries and files
#include <cassert>		// for asserts
#include <d3dx9.h>		// Direct 3D library (for all Direct 3D functions)

#include "Toolbar.h"
#include "Window.h"
//-----------------

class Macrobar
	: public Toolbar
{
	public:
		// constructor and destructor
		Macrobar( const int& width, const int& height);
		virtual ~Macrobar();

		// accessors
		virtual bool mouseover_border( const int& x, const int& y) const;

		virtual void get_button_coordinates( const int& b, int& x, int& y) const;

		// mutators
		virtual bool mouseover_button( const int& x, const int& y);
		virtual void set_button_coordinates( const int& b, const int& x, const int& y);

		virtual void render( LPDIRECT3DDEVICE9 device, const Window& window);

		virtual void reset();

	private:
		// constants for the size of the button images
		const int BUTTON_WIDTH, BUTTON_HEIGHT;

		// enumerated constants for the list of buttons
		const enum enum_Buttons {
			BUTTON_PLACEHOLDER,
			BUTTON_ALL			// the last one is for running through the list in a loop
		};

		int buttons_[BUTTON_ALL][2];

		int active_button_;
};

#endif